﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using TTEntity;
using TTDataAccess;
using System.Data;
namespace TTBusiness
{
    /// <summary>
    /// Create by ThiepND 23/3/2011
    /// </summary>
    public class clsBSAdminRole
    {
        clsDAAdminRole objDA = new clsDAAdminRole();
        /// <summary>
        /// Lấy dữ liệu từ một row của bảng adminrole gán vào đối tượng adminrole
        /// </summary>
        /// <param name="dr">DataRow in DataTable of AdminRole</param>
        /// <returns>Đối tượng adminrole đã có dữ liệu</returns>
        private clsAdminRole getDataFromRow(DataRow dr)
        {
            try
            {
                clsAdminRole obj = new clsAdminRole();
                if (!dr.Equals(null))
                {
                    if (!dr.IsNull("ID"))
                        obj.Id =Convert.ToInt32( dr["ID"]);
                    if (!dr.IsNull("RoleID"))
                        obj.RoleId = Convert.ToInt32(dr["RoleID"]);
                    if (!dr.IsNull("AdminID"))
                        obj.AdminId = Convert.ToInt32(dr["AdminID"]);
                    if (!dr.IsNull("Detail"))
                        obj.Detail = dr["Detail"].ToString();
                }
                return obj;
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Lấy danh sách AdminRole trong CSDL
        /// </summary>
        /// <returns>Danh sách AdminRole</returns>
        public List<clsAdminRole> getAll()
        {
            try
            {

                List<clsAdminRole> objList = new List<clsAdminRole>();
                DataTable dt = new DataTable();
                dt = objDA.GetAll();
                foreach (DataRow dr in dt.Rows)
                {
                    clsAdminRole account = new clsAdminRole();
                    account = getDataFromRow(dr);
                    objList.Add(account);
                }
                return objList;
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Thêm mới
        /// </summary>
        /// <param name="obj">Đối tượng AdminRole Muống thêm vào CSDL</param>
        public void Insert(clsAdminRole obj)
        {
            try
            {
                objDA.Insert(obj);
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Cập nhật
        /// </summary>
        /// <param name="obj">AdminRole đã thay đổi muốn lưu vào CSDL</param>
        public void Update(clsAdminRole obj)
        {
            try
            {
                objDA.Update(obj);
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Xóa AdminRole theo ID
        /// </summary>
        /// <param name="id">ID AdminRole muốn xóa</param>
        public void Delete(int id)
        {
            try
            {
                objDA.Delete(id);
            }
            catch (Exception)
            {

                throw;
            }
        }
    }
}
